# 需求：统计字符串的长度，不使用内置的函数len()
# str1 = "itheima"
# str2 = "itcast"
# str3 = "python"
# def countStr(str):
#     count = 0
#     for i in str:
#         count+=1
#     print(count)
#
# countStr(str1)

# simple caculator
# def caculator(x, y, z):
#     if(z == "+"):
#         return x+y
#     elif(z == "-"):
#         return x-y
#     elif(z == "*"):
#         return x*y
#     elif(z == "/" and y != 0):
#         return x/y
#     else:
#         print("undefined!")
#         return None
# ret = caculator(1,0,'/')
# print(ret)

# 返回值
# 判断一个数是否为2的幂
# def is2mi(x):
#     if ((x & x-1) == 0) and (x != 0):
#         return True
#     else:
#         return False
#
#
# ret = is2mi(0)
# print(ret)

# None 可以用于if判断，等同于False
# if not None:
    # print("i love u")
# None 可以用于声明无初始内容的变量
# name = None


# 函数的说明文档
# def add(a,b):
#     '''
#     add 参数可以接受2个参数，进行2数相加的功能
#     :param a: 形参a表示相加的其中一个数字
#     :param b: 形参b表示相加的另一个数字
#     :return: 返回值是2数相加的结果
#     '''
#     result = a+b
#     print(f"2数相加的结果是{result}")
#     return result
#
#
# add(1, 2)

# 函数的嵌套调用
# def func_b():
#     print("-----b-----")
#
# def func_a():
#     print("-----a-----")
#     func_b()
#     print("-----c-----")
#
# func_a()

# 全局变量
# num = 100
#
# def test1():
#     print(num)
#
# def test2():
#     global num
#     num = 200
#     print(num)
#
# test1()
# test2()
# print(num)

# 命令行的ATM机器
total_money = 5000000
name = input("请输入您的姓名： ")

# 主菜单函数
def main_menu():
    print("----------主菜单----------")
    print(f"{name}，您好，欢迎来到黑马银行ATM，请选择操作：")
    print("查询余额\t[输入1]")
    print("存款\t\t[输入2]")
    print("取款\t\t[输入3]")
    print("退出\t\t[输入4]")
    return int(input("请输入您的选择："))


# 查询余额函数
def get_money():
    print("----------查询余额----------")
    print(f"{name}，您好，您的余额剩余：{total_money}元")


# 存款函数
def store_money():
    print("----------存款----------")
    money = int(input("请输入存款金额： "))
    print(f"{name}，您好，您存款{money}元成功！")
    global total_money
    total_money += money
    print(f"{name}，您好，您的余额剩余：{total_money}元")


# 取款函数
def withdrawal():
    print("----------取款----------")
    money = int(input("请输入取款金额： "))
    print(f"{name}，您好，您取款{money}元成功！")
    global total_money
    total_money -= money
    print(f"{name}，您好，您的余额剩余：{total_money}元")

# 取款函数
while 1:
    choose = main_menu()
    # 查询余额
    if choose == 1:
        get_money()
    # 存款
    elif choose == 2:
        store_money()
    # 取款
    elif choose == 3:
        withdrawal()
    # 退出
    elif choose == 4:
        break
    # 错误输入也退出
    else:
        print("无效输入！")
        break

